Standard ProMpeg or SMPTE2022-1 forward error correction (FEC) calls for the use of a constant predefined dimension matrix to be sent between a sender and recipients (see FIG. 1). A predefined matrix cannot respond to changes in the network. An adaptive approach, where the recipients signals to the sender on errors, can give the sender an option to modify matrix dimension to better handle the current and the next failures.
FIG. 1 (Prior art) shows a transmitter which sends an original media stream and calculates the Row/Column FEC packets (in accordance with ProMpeg FEC or SMPTE2022-1, for example). At another end of the channel, a Receiver attempts to recover any missing packet by using the Row, Column FEC packets. The Row and column FEC packets are sent all the time using special, dedicated UDP ports. The Row and column length is static (e.g. its dimensions are set once and remain the same length for a long duration).
In FIG. 1, transmitter 11 sends serially transmitted packets 123, including data (D1, D2, D3 . . . ) and FEC (R1 . . . ) packets, over a network 12 to a receiver 13.
Data in 111 stream is formed into data to be transmitted 112, in matrix form. A FEC encoder 113 processes the data to generate, for example, a FEC packet R1 114. The data and FEC packets are transmitted through a stack 115. After being transferred through the network 2, serially received packets 124 arrive at receiver 13, with an exemplary lost data packet (D2). In receiver 13, the packets are received in a stack 135, and from there are transferred to a data buffer 136. A received FEC packet R1 134 is transferred to a FEC decoder 133, wherein a recovered D2 packet 137 is generated. The data out, received packets 138 include the lost packet D2, along with the rest of the packets.
A standard media delivery system comprises transmitter 11 and receiver 13 devices; media stream is transmitted using a Real Time
Protocol (RTP) from the transmitter to the receiver. The referenced prior art system does not include built-in support for packet retransmission, as is performed with Data delivery protocols such as TCP.
Embodiments of the present invention improve the efficiency of NEC processing using an adaptive system and method.